<ul id="error">
</ul>

<table>
    <tr>
        <th><a id="save" href="#">save</a></th>
        <th><?= $title ?></th>
    </tr>
    <tr>
        <td>Ссылка</td>
        <td><input type="text" name="href" value="<?= Arr::get($news, 'href') ?>"/></td>
    </tr>
    <tr>
        <td>Заголовок</td>
        <td><input type="text" name="html_title" value="<?= Arr::get($news, 'html_title') ?>"/></td>
    </tr>
    <tr>
        <td>Содержание</td>
        <td><textarea id="news_content" style="height:300px;" name="content"><?= Arr::get($news, 'content') ?></textarea></td>
    </tr>
    <tr>
        <td>Ключевые слова</td>
        <td><textarea name="html_keyword"><?= Arr::get($news, 'html_keyword') ?></textarea></td>
    </tr>
    <tr>
        <td>Описание</td>
        <td><textarea name="html_description"><?= Arr::get($news, 'html_description') ?></textarea></td>
    </tr>
    <tr id="images_uploader">        
    </tr>
    <input type="hidden" name="id" value="<?= Arr::get($news, 'id', '')?>">   
</table>


<script type="text/javascript">
    var news_id = <?= Arr::get($news, 'id', 0)?>;
    
    function load_news_images(){
        $.ajax({url:'/admin/news/images',
                type:'POST',
                data: {'id' : news_id},
                timeout: 5000,
                success: function(k){                    
                    var response = eval("(" + k + ")");
                    $('#images_line').empty();
                    $('#images_line').height((response.length) ? <?= Kohana::$config->load('news.image_min_height')+12?> : 0);
                    $('#images_line').width(<?= Kohana::$config->load('news.image_min_width')+12?> * response.length);
                    for(var key in response){
                        $('#images_line').append('<div class="image_box">' + 
                                                    '<img src="'+response[key]+'"/>'+
                                                    '<span class="image_delete">X</span>'+
                                                 '</div>');
                    }
                    
                },
                error: function(){
                    alert('Ошибка обращения к серверу');
                }
        });
    }
    
    $(document).ready(function(){    
        var w = $('#news_content').width();
        var h = $('#news_content').height();
        
        var uploader = new qq.FileUploader({
            element: document.getElementById('images_uploader'),
            action: '/admin/news/image_upload',
            debug: false,
            params: {'id' : news_id},
            template: '<td><div class="qq-upload-button">Изображения</div></td>'+
                      '<td>'+
                      '<div id="images_box">'+
                      '<div id="images_line"></div>'+                          
                      '<div class="qq-upload-drop-area"><span>Перетащите файлы изображений для загрузки</span></div>' +
                      '</div>' +
                      '<ul class="qq-upload-list"></ul>' + 
                      '</td>',
            onComplete: function(id, filename, responseJSON){
                $(".qq-upload-list").find("li[file_id="+id+"]").remove();
                load_news_images();
            }
        }); 
        
        $(".image_delete").live('click', function(){
             var src = $(this).prev().attr('src');

            $.ajax({url: '/admin/news/image_delete',
                    type: 'POST',
                    data: {'src': src},
                    success: function(){
                        load_news_images();
                    },
                    error: function(){
                        alert('Ошибка обращения к серверу');
                    }
            });
       });
        
        function full_screen_editor(){
            if($('#news_content').hasClass('fullscreen')){
                $('#news_content').width(w);
                $('#news_content').height(h);
                $('#news_content').removeClass('fullscreen');             
            } else {
                $('#news_content').hide();
                $('#news_content').addClass('fullscreen')
                                     .width($('#content').innerWidth() - 22)
                                     .height($(window).height() - $('#menu').innerHeight() -22);
                
                $('#news_content').show();

            }    
        }
        
        $('#news_content').bind('keydown', function(e){
            if(e.keyCode == 122){
                if(e.preventDefault) 
                    e.preventDefault();
                else
                    e.returnValue = false;
                
               full_screen_editor(); 
            }
        });
        
        $('#news_content').bind('dblclick', function(){
            full_screen_editor();
        })
        
        $('#save').bind('click', function(){
            $('#error').empty().slideUp();
            
            var data = {};
            $('#content table').find('input, textarea').each(function(){
                
                key = $(this).attr('name');
                
                value = $(this).val();
                data[key] = value;
            });
            
            $.ajax({'url':'/admin/news/save',
                    'type': 'POST',
                    'data': data,
                    'timeout':5000,
                    'success':function(k){
                        response = eval("(" + k + ")");
                        if(response.status == 'ok')
                            window.location.assign('/admin/news');
                        else {                            
                            var error = response.error;
                            $('#error').append('Ой, ошибочка вышла...<br/>');
                            for(var key in error){
                                $('#error').append('<li>' + error[key] + '</li>');             
                            }
                            $('#error').slideDown();
                        }   
                    },
                    'error':function(){
                        alert('Ошибка!');
                    }
            });

           return false;
        });
        
    });
    
    $(window).load(function(e){
        $('#images_box').width($('#images_box').width());
        load_news_images();
    });

</script>